package com.stm.bi.dto.query;

import com.stm.framework.annotation.ReqParam;
import com.stm.framework.dto.PageQuery;
import com.stm.bi.annotation.QueryCriteria;
import com.stm.bi.constant.DictionaryConstants;

import java.util.ArrayList;
import java.util.List;

/**
 * @Description:
 * @Author: bo
 * @Date: 2023/10/17 9:20
 */
public class ProductMaterialQry extends PageQuery {

    @QueryCriteria(label = "部门ID",required = true)
    private Long deptId;

    @ReqParam(label = "年份",required = true)
    private String year;

    @ReqParam(label = "商品维度",dictType = DictionaryConstants.PRODUCT_STRUCT_TYPE)
    private String productDimension;

    @ReqParam(label = "面料分类Code集合")
    private List<String> materialCategoryCodes = new ArrayList<>();

    @ReqParam(label = "面料分类名称")
    private String materialCategoryName;

    @ReqParam(label = "面料编码")
    private String materialCode;

    public String getMaterialCategoryName() {
        return materialCategoryName;
    }

    public ProductMaterialQry setMaterialCategoryName(String materialCategoryName) {
        this.materialCategoryName = materialCategoryName;
        return this;
    }

    public String getYear() {
        return year;
    }

    public ProductMaterialQry setYear(String year) {
        this.year = year;
        return this;
    }

    public Long getDeptId() {
        return deptId;
    }

    public ProductMaterialQry setDeptId(Long deptId) {
        this.deptId = deptId;
        return this;
    }

    public String getProductDimension() {
        return productDimension;
    }

    public ProductMaterialQry setProductDimension(String productDimension) {
        this.productDimension = productDimension;
        return this;
    }

    public List<String> getMaterialCategoryCodes() {
        return materialCategoryCodes;
    }

    public ProductMaterialQry setMaterialCategoryCodes(List<String> materialCategoryCodes) {
        this.materialCategoryCodes = materialCategoryCodes;
        return this;
    }

    public String getMaterialCode() {
        return materialCode;
    }

    public ProductMaterialQry setMaterialCode(String materialCode) {
        this.materialCode = materialCode;
        return this;
    }
}
